O panorama de operadores do Julia é projetado para espelhar a notação matemática, pontuando a lacuna entre matemática formal e computação de alto desempenho por meio de um rico conjunto de símbolos ASCII e símbolos Unicode.
1. Fundamentos Aritméticos
Além dos operadores binários padrão, o Julia oferece formas unárias ($+x, -x$) e divisão especializada. Recursos notáveis incluem a divisão inversa ($x \backslash y$), que equivale a $y / x$, e o operador de resto ($x \% y$), equivalente a rem(x,y).
- $+x, -x$ (Unário)
- $x + y, x - y, x * y$
- $x / y$ (Dividir)
- $x \div y$ (Divisão Inteira)
- $x \backslash y$ (Inverso)
- $x ^ y$ (Potência)
- $x \% y$ (Resto)
- $\sim x$ (Negação Bit a Bit)
- $x \& y$ (E)
- $x | y$ (OU)
- $x \veebar y$ (XOR / ⊻)
- $x >>> y$ (Deslocamento Lógico)
- $x >> y$ (Deslocamento Aritmético)
- $x << y$ (Deslocamento à Esquerda)
2. Precisão e Tipos
Negativa lógica !x é estritamente para booleanos, enquanto a til (~) serve como negação bit a bit para inteiros. Uma nuance crítica é consciência de tipo; aplicando $\sim$ a um UInt8 vs. um UInt32 produz resultados hexadecimais diferentes porque as operações são realizadas com base na largura de bits específica do tipo subjacente.